package io.finer.erp.jeecg.stock.service;

import java.io.Serializable;
import java.util.Collection;
import java.util.List;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.finer.erp.jeecg.stock.vo.StkPickUpBillVo;
import org.jeecg.common.api.vo.Result;

import com.baomidou.mybatisplus.extension.service.IService;

import io.finer.erp.jeecg.stock.entity.StkPickUpBill;

/**
 * @Description: 提货单
 * @Author: jeecg-boot
 * @Date:   2020-11-10
 * @Version: V1.0
 */
public interface IStkPickUpBillService extends IService<StkPickUpBill> {

	/**
	 * 删除一对多
	 */
	public void delMain (String id);
	
	/**
	 * 批量删除一对多
	 */
	public void delBatchMain (Collection<? extends Serializable> idList);

	/**
	 * @Description 添加一条提货单
	 * @param processId
	 * @return
	 * Create at: 2020-11-10 13:13:12
	 * @author: duany
	 * Revision:
	 *    2020-11-10 13:13:12 - first revision by duany
	 *        
	 */
	public Result<?> addPickUp(String processId);

	/**
	 * @Description 根据工序ID查询提货单
	 * @param processId
	 * @return
	 * Create at: 2020-11-10 13:40:34
	 * @author: duany
	 * Revision:
	 *    2020-11-10 13:40:34 - first revision by duany
	 *        
	 */
	public StkPickUpBill selectByProcessId(String processId);

	/**
	 * @Description 
	 * @param materialId
	 * @param ids
	 * @return
	 * Create at: 2020-11-10 17:06:31
	 * @author: duany
	 * Revision:
	 *    2020-11-10 17:06:31 - first revision by duany
	 *        
	 */
	public Result<?> addPicupEntry(String materialId, String ids);

	/**
	 * @Description 查询获取分切方案信息
	 * @param id
	 * @return
	 * Create at: 2020-11-12 16:20:12
	 * @author: duany
	 * Revision:
	 *    2020-11-12 16:20:12 - first revision by duany
	 *        
	 */
	public Result<?> getCutting(String id);

	/**
	 * @Description 通过mes单ID查询提货单
	 * @param mesId
	 * @return
	 * Create at: 2021-01-27 11:30:18
	 * @author: duany
	 * Revision:
	 *    2021-01-27 11:30:18 - first revision by duany
	 *        
	 */
	public List<StkPickUpBill> getByMesId(String mesId);

	public Page<StkPickUpBillVo> selectUpBill(IPage<StkPickUpBillVo> page,String billNo,String mesId,String deviceId,
											  String billStatus,String isPush);



}
